//当前的这个模块：API接口进行统一管理
import requests from './request'

import mockRequest from './mockAjax'

//三级联动接口  get请求 不携带任何参数
//   /api/product/getBaseCategoryList
//写一个函数通过封装的axios发送请求，只要是需要请求相同api接口的地方
//可以直接调用函数就可以了
  //发请求:axios发请求返回的是Promise对象
export const reqCategoryList = () => 
   requests({
        url: '/product/getBaseCategoryList',
        method:'GET'
   })
    
//获取banner（Home首页轮播图）接口
export const reqGetBannerList = () => mockRequest.get('/banner')

//获取floor组件的数据
export const reqFloorList = () => mockRequest.get('/floor')

//获取搜索模块数据 请求地址：/api/list  请求方式：post  请求需要带参数
//箭头函数需要带参数
//当前的这个接口(获取搜索模块的数据)，给服务器传递一个默认的参数， params，至少是一个空对象
export const reqGetSearchInfo = (params) =>
  requests({
    url: '/list',
    method: 'post',
    data: params
  })

//获取产品详情信息的接口 /api/item/{ skuId }  GET 带参数
//获取产品详情的接口   注意url 要用模板字符串写
///api/item/{skuId}  get
export const reqGoodsInfo = (skuId) =>requests({ url: `/item/${skuId}`, method: 'get' });


//将产品添加到购物车中 或者更新某一个产品的个数
// /api/cart/addToCart/{ skuId }/{ skuNum }   POST方式
export const reqAddOrUpdateShopCart = (skuId, skuNum) => requests({
  url: `/cart/addToCart/${skuId}/${skuNum}`,
  method: 'post',
})

// 获取购物车列表数据的接口 /api/cart/cartList  GET请求 不带参
export const reqCartList = () => requests({
  url: '/cart/cartList',
  method: 'get',
})


//删除购物车产品的接口/api/cart/deleteCart/{skuId}  方式delete 带参
export const reqDeleteCartById = (skuId) => requests({
  url: `/cart/deleteCart/${skuId}`,
  method: 'delete',
})

//切换商品选中状态 /api/cart/checkCart/{skuId}/{isChecked}
export const reqUpdateCheckedByid = (skuId, isChecked) => requests({
  url: `/cart/checkCart/${skuId}/${isChecked}`,
  method: 'get'
})

//获取验证码接口  /api/user/passport/sendCode/{phone} get 方式
export const reqGetCode = (phone ) => requests({
  url: `/user/passport/sendCode/${phone}`,
  method:'get'
})

//注册的接口 /api/user/passport/register post
export const reqUserRegister = (data ) => requests({
  url: '/user/passport/register',
  method: 'post',
  data
})
//登录接口
export const reqUserLogin = (data ) => requests({
  url: '/user/passport/login',
  method: 'post',
  data
})

// 获取用户的信息【需要带着用户的token向服务器要用户信息】
//  /api/user/passport/auth/getUserInfo

export const reqUserInfo = () => requests({
  url: '/user/passport/auth/getUserInfo',
  method: 'get',
 
})

//退出登录 /api/user/passport/logout  get
export const reqLogout = () => requests({
  url: '/user/passport/logout',
  method:'get'
})

//获取用户地址信息 /api/user/userAddress/auth/findUserAddressList
export const reqAddressInfo = () => requests({
  url:'/user/userAddress/auth/findUserAddressList',
  method:'get'
})

//获取交易页信息 /api/order/auth/trade
export const reqOrderInfo = () => requests({
  url:'/order/auth/trade',
  method:'get'
})


//提交订单的接口/api/order/auth/submitOrder?tradeNo={tradeNo}
export const reqSubmitOrder = (tradeNo,data) => requests({
  url:`/order/auth/submitOrder?tradeNo=${tradeNo}`,
  method: 'post',
  data
})


//获取订单支付信息  /api/payment/weixin/createNative/{orderId}
export const reqPayInfo = (orderId) => requests({
  url:`/payment/weixin/createNative/${orderId}`,
  method:'get'
})

// 获取支付订单状态 /api/payment/weixin/queryPayStatus/{orderId}
export const reqPayStatus = (orderId) => requests({
  url:`/payment/weixin/queryPayStatus/${orderId}`,
  method:'get'
})

//获取个人中心的数据 /api/order/auth/{page}/{limit}
export const reqMyOrderList = (page,limit) => requests({
  url:`/order/auth/${page}/${limit}`,
  method:'get'
})



